package com.union.vehicleassistant.http.api;

import com.google.gson.annotations.SerializedName;
import com.hjq.http.config.IRequestApi;
import com.union.vehicleassistant.widget.dialog.IDialogSelection;

import java.io.Serializable;

public class NodeApi implements IRequestApi {
    @Override
    public String getApi() {
        return "flowable/task/nextFlowNodeList";
    }

    public static class Bean implements Serializable, IDialogSelection {

        @SerializedName("id")
        private String id;
        @SerializedName("xmlRowNumber")
        private int xmlRowNumber;
        @SerializedName("xmlColumnNumber")
        private int xmlColumnNumber;
        @SerializedName("name")
        private String name;
        @SerializedName("documentation")
        private Object documentation;
        @SerializedName("asynchronous")
        private boolean asynchronous;
        @SerializedName("notExclusive")
        private boolean notExclusive;
        @SerializedName("defaultFlow")
        private Object defaultFlow;
        @SerializedName("forCompensation")
        private boolean forCompensation;
        @SerializedName("loopCharacteristics")
        private Object loopCharacteristics;
        @SerializedName("ioSpecification")
        private Object ioSpecification;
        @SerializedName("assignee")
        private String assignee;
        @SerializedName("extended")
        private boolean extended;
        @SerializedName("exclusive")
        private boolean exclusive;

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        public int getXmlRowNumber() {
            return xmlRowNumber;
        }

        public void setXmlRowNumber(int xmlRowNumber) {
            this.xmlRowNumber = xmlRowNumber;
        }

        public int getXmlColumnNumber() {
            return xmlColumnNumber;
        }

        public void setXmlColumnNumber(int xmlColumnNumber) {
            this.xmlColumnNumber = xmlColumnNumber;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public Object getDocumentation() {
            return documentation;
        }

        public void setDocumentation(Object documentation) {
            this.documentation = documentation;
        }

        public boolean isAsynchronous() {
            return asynchronous;
        }

        public void setAsynchronous(boolean asynchronous) {
            this.asynchronous = asynchronous;
        }

        public boolean isNotExclusive() {
            return notExclusive;
        }

        public void setNotExclusive(boolean notExclusive) {
            this.notExclusive = notExclusive;
        }

        public Object getDefaultFlow() {
            return defaultFlow;
        }

        public void setDefaultFlow(Object defaultFlow) {
            this.defaultFlow = defaultFlow;
        }

        public boolean isForCompensation() {
            return forCompensation;
        }

        public void setForCompensation(boolean forCompensation) {
            this.forCompensation = forCompensation;
        }

        public Object getLoopCharacteristics() {
            return loopCharacteristics;
        }

        public void setLoopCharacteristics(Object loopCharacteristics) {
            this.loopCharacteristics = loopCharacteristics;
        }

        public Object getIoSpecification() {
            return ioSpecification;
        }

        public void setIoSpecification(Object ioSpecification) {
            this.ioSpecification = ioSpecification;
        }

        public String getAssignee() {
            return assignee;
        }

        public void setAssignee(String assignee) {
            this.assignee = assignee;
        }

        public boolean isExtended() {
            return extended;
        }

        public void setExtended(boolean extended) {
            this.extended = extended;
        }

        public boolean isExclusive() {
            return exclusive;
        }

        public void setExclusive(boolean exclusive) {
            this.exclusive = exclusive;
        }

        @Override
        public String getTitle() {
            return name;
        }

        @Override
        public String getDataId() {
            return id;
        }
    }
}
